const express = require('express');
const router = express.Router();
const auth = require('../middleware/auth');
const adminAuth = require('../middleware/adminAuth');
const orderController = require('../controllers/orderController');

// 获取订单列表（支持角色和状态筛选）
router.get('/', auth, orderController.getOrders);

// 创建订单
router.post('/', auth, orderController.createOrder);

// 获取订单详情
router.get('/:id', auth, orderController.getOrderDetail);

// 更新订单状态
router.put('/:id/status', auth, orderController.updateOrderStatus);

// 添加评价（需要登录，买家权限）
router.post('/:id/review', auth, orderController.addReview);

// 管理员路由
// 管理员获取所有订单列表
router.get('/admin/orders', auth, adminAuth, orderController.getAllOrders);

// 管理员获取订单详情
router.get('/admin/orders/:id', auth, adminAuth, orderController.getOrderAdmin);

// 管理员强制取消订单
router.put('/admin/orders/:id/force-cancel', auth, adminAuth, orderController.forceCancel);

// 管理员处理争议订单
router.put('/admin/orders/:id/resolve-dispute', auth, adminAuth, orderController.resolveDispute);

// 管理员标记争议订单
router.put('/admin/orders/:id/mark-dispute', auth, adminAuth, orderController.markDispute);

// 用户（买家或卖家）报告订单争议
router.put('/:id/report-dispute', auth, orderController.reportDispute);

module.exports = router; 